package com.shrct.businessprocess.product.events;

import com.shrct.businessprocess.product.RCCompanyServiceEntry;
import com.shrct.businessprocess.product.RCFullServiceProductEntry;
import com.shrct.businessprocess.product.RCLogicProduct;
import com.shrct.businessprocess.product.RCRMABorrowReplacementEvent;
import com.shrct.businessprocess.product.RCRMAChildrenReplacementEvent;
import com.shrct.businessprocess.product.RCRMANormalReplacementEvent;
import edu.fudan.mylang.pf.event.IEntityEventsListner;

public interface RCLogicProductEventsListener extends IEntityEventsListner<RCLogicProduct> {
  public abstract void _registerFullServiceProduct(final RCLogicProduct entity, final RCFullServiceProductEntry serviceProduct);
  
  public abstract void _registerCompanyService(final RCLogicProduct entity, final RCCompanyServiceEntry companyService);
  
  public abstract void _unregisterCompanyService(final RCLogicProduct entity, final RCCompanyServiceEntry companyService);
  
  public abstract void _childrenReplacenebtRMA(final RCLogicProduct entity, final RCRMAChildrenReplacementEvent event);
  
  public abstract void _borrowReplacementRMA(final RCLogicProduct entity, final RCRMABorrowReplacementEvent event);
  
  public abstract void _normalRMA(final RCLogicProduct entity, final RCRMANormalReplacementEvent event);
}
